package com.itheima.service.pms;

import com.baomidou.mybatisplus.extension.service.IService;
import com.itheima.result.ResultData;
import com.itheima.vo.pms.ProductAttributeParam;
import com.itheima.vo.pms.ProductCategoryParam;

import java.util.List;

public interface PmsProductAttributeService extends IService<ProductAttributeParam> {
    /**
     * 根据商品分类的id获取商品属性及属性分类
     * @param productCategoryId
     * @return
     */
    ResultData attrInfo(Long productCategoryId);

    /**
     * 添加商品属性信息
     * @param productAttributeParam
     * @return
     */
    void create(ProductAttributeParam productAttributeParam);

    /**
     * 批量删除商品属性
     * @param ids
     * @return
     */
    void delete(List<Long> ids);

    /**
     * 根据分类查询属性列表或参数列表
     * @param cid
     * @param type
     * @param pageNum
     * @param pageSize
     * @return
     */
    ResultData listAttribute(Long cid, Integer type, Long pageNum, Long pageSize);

    /**
     * 修改商品属性信息
     * @param id
     * @param productAttributeParam
     * @return
     */
    void updateAttribute(Long id, ProductAttributeParam productAttributeParam);

    /**
     * 查询单个商品属性
     * @param id
     * @return
     */
    ProductAttributeParam getAttribute(Long id);
}
